package com.hls.modules.sysjob.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.hls.modules.sysjob.util.ScheduleConstants;
import lombok.Data;
import javax.validation.constraints.NotNull;

@TableName("sys_job")
@Data
public class SysJob extends Model<SysJob> {
    /**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	/**
     * 任务ID
     */
	@TableId(type = IdType.ASSIGN_ID, value = "job_id")
	@NotNull(message = "任务ID不能为空")
    private String jobId;

    /**
     * 任务名称
     */
    private String jobName;

    /**
     * 任务组名
     */
    private String jobGroup;

    /**
     * 任务方法
     */
    private String methodName;

    /**
     * 方法参数
     */
    private String methodParams;

    /**
     * cron执行表达式
     */
    private String cronExpression;

    /**
     * 计划策略（0:默认1立即执行 2执行一次 3放弃执行）
     */
    private String misfirePolicy= ScheduleConstants.MISFIRE_DEFAULT;;

    /**
     * 状态（0正常 1暂停）
     */
    private String status;


    /**
     * 备注信息
     */
    private String remark;
}